home *** CD-ROM | disk | FTP | other *** search
/ PCMania 44 / PCMania CD44_1.iso / pcmania / treal44 / aviles / demo2.c < prev    next >
C/C++ Source or Header  |  1996-04-05  |  1KB  |  42 lines

  1.   #include "3dbasics.h"
  2.  
  3.   double p1[3],p2[3],p3[3],p4[3];
  4.   struct CUERPO HOLA;
  5.  
  6.   void forma_cilindro(int n,double R,double H)
  7.   {
  8.   /*n es el numero de lados con que se desea aproximar al cilindro el prisma
  9.     que se va a formar, R es el radio y H la altura*/
  10.     double delta_v=(2*3.14159)/(double)n;
  11.     int icl1;
  12.     for (icl1=0;icl1<n;icl1++)
  13.     {
  14.     p1[0]=H;
  15.     p1[1]=R*cos((double)icl1*delta_v);
  16.     p1[2]=R*sin((double)icl1*delta_v);
  17.     p2[0]=H;
  18.     p2[1]=R*cos((double)(icl1+1)*delta_v);
  19.     p2[2]=R*sin((double)(icl1+1)*delta_v);
  20.     p3[0]=0.0;
  21.     p3[1]=R*cos((double)(icl1+1)*delta_v);
  22.     p3[2]=R*sin((double)(icl1+1)*delta_v);
  23.     p4[0]=0.0;
  24.     p4[1]=R*cos((double)icl1*delta_v);
  25.     p4[2]=R*sin((double)icl1*delta_v);
  26.     forma_tetrangulo(p1,p2,p3,p4,93,0,NULL,&HOLA);
  27.     }
  28.   promedia_normales(&HOLA);
  29.   return;
  30.   }
  31.  
  32.   main()
  33.   {
  34.   visx=visy=visz=1000;
  35.   mix=miy=miz=0;
  36.   neary=300;
  37.   Initialize(2,0,0,100*1024);
  38.   forma_cilindro(40,100.0,1000.0);
  39.   Manage();
  40.   cerrar_sistema();
  41.   }
  42.